package com.xb.loan.usercenter.user.user.dao;


import com.xb.loan.usercenter.user.user.dao.bean.UserPayCard;
import com.xb.loan.util.mybatis.MyBatisRepository;

import java.util.List;
import java.util.Map;

@MyBatisRepository
public interface UserPayCardDao {
    int insert(UserPayCard record);


    int updateUserPayCard(UserPayCard record);

    /**
     * 
     * 根据用户编号修改支付卡信息
     * @param record
     * @return 影响记录条数
     */
    public int updateUserPayCarByUserId(UserPayCard record);

    /**
     * 设置用户下的卡的默认状态
     * @param map  userId 用户ID  isDefault  是否为默认
     * @return 
     */
    public int updateDefaultStatusByUserId(Map<String, Object> map);

    UserPayCard selectByPrimaryKey(String paycardId);
    
    /**
     * 查询用户Id与支付卡之间的绑定信息
     * @param map  userId 用户Id payChannelType 支付卡类型 payCardNo 支付卡号
     * @return
     */
    public UserPayCard queryUserPayCardByMap(Map<String, Object> map);
    
    /**
     * 查询用户绑定卡信息
     * @param userId 用户ID
     * @return
     */
    public List<UserPayCard> queryUserPayCard(String userId);
    
    /**
     * 查询用户默认绑定卡信息
     * @param params 用户ID、defaultCode
     * @return
     */
    public UserPayCard queryDefaultPayCard(Map<String, Object> params);
}